package cn.openea.perpartner.meily.web.entity.base;

import cn.hutool.json.JSONUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.apache.commons.lang3.StringUtils;

/**
 * @author ysk
 * @version 1.0.1
 * @Description 统一的搜索字段，注意，改类只能使用在Vo中，不可使用到实体类
 * @createTime 2023年04月27日 19:12:00
 */
@Data
public class BaseSearchVo {

    @ApiModelProperty(value = "时间搜索区间")
    private String dateRange;

    @ApiModelProperty(value = "搜索字段")
    private String searchStr;

    @ApiModelProperty(value = "开始时间")
    private String startDate;

    @ApiModelProperty(value = "结束时间")
    private String endDate;

    public void buildDateRangeParams() {
        // 时间段查询
        if (StringUtils.isNotBlank(dateRange) && JSONUtil.isJson(dateRange)) {
            JSONObject jsonObject = JSON.parseObject(dateRange);
            String startDate = jsonObject.getString("startDate");
            String endDate = jsonObject.getString("endDate");
            if (StringUtils.isNotBlank(startDate) && StringUtils.isNotBlank(endDate)) {
                this.setStartDate(startDate);
                this.setEndDate(endDate);
            }
        }
    }
}
